

let arr = [{ num: 5 }, { num: 8 }]
arr.map(async (item) => {
    let fun = () => {
        return new Promise((a, b) => {
            a(true)
        })
    }
    if (await fun()) {
        item.num = item.num * 2
        // console.log(item.num);
    }
})

console.log(arr, '我没有等待');
setTimeout(() => {
    console.log(arr, '我是等待完成的');
}, 1000);



let myMap = () => {
    return new Promise(back => {

        arr.map(async (item, i) => {
            let fun = () => {
                return new Promise((a, b) => {
                    a(true)
                })
            }
            if (await fun()) {
                item.num = item.num * 2
                // console.log(item.num);
            }
            if (i >= arr.length - 1) {
                back(arr)
            }
        })


    })
}

myMap().then(aa => console.log(aa,'我是封装的map'))

